package com.bsj.power.job.service;

import com.bsj.power.common.config.global.JsonResult;
import com.bsj.power.common.def.dto.PageDTO;
import com.bsj.power.common.def.entity.exp.TrainPlan;
import com.bsj.power.common.def.dto.job.CourseDTO;
import com.bsj.power.common.def.dto.job.TrainPlanDTO;

import java.util.List;

/**
 * @author yinhao
 * @version 1.0
 * @description 培训计划
 * @date 2024/5/28
 */
public interface TrainPlanService {

    /**
     * 新增修改培训计划
     * @param vo
     * @return
     */
    JsonResult addAndUpdate(TrainPlanDTO vo);

    /**
     * 分页获取培训计划列表
     * @param dto
     * @return
     */
    JsonResult<List<TrainPlan>> pageList(PageDTO dto);

    /**
     * 根据ID获取培训计划
     * @param trainId
     * @return
     */
    JsonResult<TrainPlan> findIdByInfo(Long trainId);

    /**
     * 批量删除培训计划
     * @param trainIds
     * @return
     */
    JsonResult<Integer> deleteExp(Long[] trainIds);

    /**
     * 新增或者修改培训课程
     * @param vo
     * @return
     */
    JsonResult addAndUpdateCourse(CourseDTO vo);

    /**
     * 删除培训课程
     * @param courseIds
     * @return
     */
    JsonResult<Integer> deleteCourse(Long[] courseIds);
}
